The invention relates to a method for operating a bus system for communication with a plurality of communication subscribers, in particular in a land vehicle and/or aircraft.
Bus systems which permit and organize communication between different communication subscribers are known and are frequently also used in land vehicles and/or aircraft, for example motor vehicles. So that decentralized communication is at all possible via a bus system, various standards are known according to which a bus system, for example CAN buses or FlexRay buses, can be operated.
The FlexRay bus was developed selectively for automobiles and is a serial, deterministic and fault-tolerant field bus system. In order to establish a node of the FlexRay bus system, for example in order to connect a control device in a motor vehicle to the FlexRay bus, a “bus transceiver” and a “communication controller” are required as components, wherein the “bus transceiver” constitutes the interface for the data line, and the “communication controller”, for example a microprocessor, implements the bus protocol for the specific node. The bus protocol controls how a network starts, how the global time is established and maintained in the sense of synchronization, and which node, in particular which control devices, are allowed to transmit at which time. The “communication controller” therefore considers the received signals of other communication subscribers and derives the time at which its own node may transmit and prepares corresponding data packets to be transmitted.
In this context, the FlexRay protocol is defined by the fact that for each cycle a static and a dynamic time window are provided. In the static segment, each node, in particular each control device, is assigned a time slot (slot) in which it can transmit messages. In this context, each node is assigned a time slot of fixed length, ultimately therefore of fixed byte count for the user data which can be transmitted, wherein the corresponding byte count is defined before the start of the operation of the bus system. The node must not exceed the byte count and therefore the chronological length of the time slot thereof. If the message to be transmitted is too long, the next cycle or the dynamic time window must be used to continue the message. The purpose of the static time window is to represent a deterministic part of the bus protocol so that important messages, for example relating to a steering system or a braking system, can be transmitted within a known time.
The dynamic time window, which is fixed in its overall length, can be used by a node, in particular by a control device, if relatively long messages or further messages are to be transmitted and the byte count of the static slot thereof is not sufficient, or said byte count is used for messages with a higher priority. The time slots (minislot) in the dynamic time window may elapse once here if a control device did not wish to output a message. As soon as a node wishes to transmit a message, the time at which the next node can transmit is shifted, rearward in accordance with the length of the message, with the result that it may be the case that further nodes can no longer transmit and the entire dynamic time window is used up. The minislots of the dynamic time window are consequently allocated according to certain priorities.
In one cycle, in this context it is also possible to provide a further time window, the “Network Idle Time” (NIT), which is intended to permit the node to perform precise synchronization again.
The messages or data packets which are sent over a bus system, for example a FlexRay bus system, are usually constructed in such a way that they comprise a header, the actual user data (“payload”) and a trailer. In addition, the time period, which cannot be used for user data, of each time slot can comprise a “Channel Idle Time” (CIT) and a “Channel Idle Delimiter” (CID).
In bus systems with a static time window (often also a static schedule region), for example a FlexRay bus, the byte count of a slot (time slot) of the static time window can consequently be defined for all the time slots contained therein, and said byte count therefore also determines the length of the static time window. In this context, for example byte counts from 0 to 254 bytes can be selected. This is, however, disadvantageous in that ultimately bandwidth is wasted. This is because if a high byte count is selected (broad slot configuration), subscribers with a small communication requirement cannot use the high bandwidth assigned to them in the time slot thereof. If, on the other hand, small byte counts are selected (narrow slot configuration), communication subscribers with a high communication requirement must use a plurality of time slots and therefore have high losses owing to the multiple use of the time periods which are not suitable for user data in each time slot, in particular owing to the multiple use of the header, of the trailer, of the CIT and of the CID.